home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #2 / Monster Media No. 2 (Monster Media)(1994).ISO / os2 / gp2_101.zip / GP2.DOC < prev    next >
Text File  |  1994-07-19  |  35KB  |  835 lines

  1.  
  2.  
  3.                            Graphic Packet für OS/2
  4.  
  5.                                 Version 1.01
  6.  
  7.                        (C) Ulf Saran, DH1DAE 1993-1994
  8.  
  9.  
  10.  
  11.                             Vorläufiges Handbuch
  12.  
  13.  
  14.  
  15.  
  16. Vorwort
  17.  
  18.   Endlich gibt es sie, die erste Version von Graphic Packet für OS/2. Ich
  19.   habe im Dezember 1993 mit den Programmierarbeiten angefangen und habe sehr
  20.   intensiv an der Programmierung gearbeitet, damit es endlich etwas mehr
  21.   Programmvielfalt im OS/2-Sektor gibt. Wichtig war mir dabei, daß es überhaupt
  22.   einmal ein PR-Programm für den OS/2-PM gibt und nicht, daß direkt schon die
  23.   erste Version dieses Programms perfekt ist. ;)
  24.   So wird man gegenüber der DOS-Version sicher noch einige Details vermissen,
  25.   doch habe ich für die nächsten Versionen von GP/2 bereits viele Ideen, die
  26.   ich nur bisher aus Zeitmangel noch nicht in die Tat umsetzten konnte.
  27.   Geplant ist vor allem noch eine Online-Hilfe, die dieses Handbuch
  28.   vollständig ablösen wird. Daher wurde diese Dokumentation auch sehr kurz
  29.   gehalten. Ich glaube aber, daß die meisten Funktionen bzw. Dialogfenster
  30.   selbsterklärend sind und keiner großen Erklärung bedürfen...
  31.    
  32.  
  33.  
  34.  
  35. 1. Inhalt der GP/2-Diskette
  36.  
  37.   Die GP/2-Diskette muß folgende Dateien enthalten:
  38.  
  39.     #GP2.EXE          Selbstentpackendes Archiv mit den Programmdateien
  40.                       von GP/2
  41.  
  42.     ALAS.DOC          Die Bestimungen, unter denen GP/2 zu benutzen bzw.
  43.                       weiterzugeben ist.
  44.  
  45.     INSTALL.DOC       Sollte diese Datei fehlen, stimmt jetzt irgendetwas
  46.                       nicht. ;-)
  47.  
  48.  
  49.  
  50.  
  51. 2. Installation von GP/2 auf die Festplatte
  52.  
  53.   Starten sie eine OS/2-Session und legen sie ein Unterverzeichnis an, in das
  54.   GP/2 installiert werden soll. Danach in das Unterverzeichnis wechseln und
  55.   #GP2.EXE von Diskette starten. Wenn sich die GP/2-Diskette in Laufwerk A:
  56.   befindet, lautet der Befehl dafür "A:\#GP2". Bei Laufwerk B: entsprechend
  57.   "B:\#GP2".
  58.   Nachdem alle Dateien entpackt und auf die Festplatte installiert wurden,
  59.   sollten Sie ein WPS-Objekt für GP/2 anlegen. Dazu öffnen Sie den Ordner
  60.   "Schablonen" und ziehen die Schablone "Programm" auf die Arbeitsoberfläche.
  61.   Sie können fpr GP/2 auch einen eigenen Ordner anlegen. Dazu brauchen Sie
  62.   nur die Schablone "Ordner" auf die Arbeitsoberfläche zu ziehen und diesen
  63.   zu öffnen, danach die Schablone "Programm" auf den geöffneten Ordner ziehen.
  64.   Nachdem man das Programmobjekt angelegt hat, öffnet sich das "Einstellungen"-
  65.   Notebook des neuen Programmobjekts. Tragen sie nun den Dateinamen und das
  66.   Arbeitsverzeichnis ein.
  67.   WICHTIG: Unbedingt das Arbeitsverzeichnis richtig eintragen. In diesem
  68.            Verzeichnis werden die Konfigurationsdateien von GP/2 abgelegt.
  69.  
  70.   Nun ist GP/2 installiert und kann gestartet werden.
  71.  
  72.  
  73.  
  74. 3. Der erste Start von GP/2
  75.  
  76.   Wenn sie GP/2 das erste Mal starten, erscheint zunächst ein Dialogfenster
  77.   für die V24-Einstellungen. Die Bedienungselemente dürften selbsterklärend
  78.   sein. ;)
  79.   Nachdem man die gewünschten Parameter eingestellt hat, den Knopf "Anwenden"
  80.   drücken. Nun müßten sich das Monitorfenster und die Anzahl von Kanalfenstern
  81.   öffnen, die man im V24-Dialog gewählt hat.
  82.   Bevor man aber mit dem Connecten loslegen kann, muß man zunächst noch einige
  83.   weitere Parameter einstellen. Zuerst sollten die verschiedenen System-
  84.   Verzeichnisse erstell werden. Dazu wählen sie den Menüpunkt "Verzeichnisse"
  85.   aus dem "Optionen"-Menü und tragen die gewünschten Verzeichnispfade in die
  86.   Eingabefenster ein. Danach ist es ratsam, im Menüpunkt "Frequenzen" den/die
  87.   benutzen Digipeater sowie deren Frequenzen einzutragen. Diese Angaben sind
  88.   für den GP/2-Autorouter sowie das automatische Logbuch wichtig.
  89.   Des weiteren muß noch das Mycall für jeden Kanal festgelegt werden. Dazu
  90.   wählt man nacheinander jedes Fenster (Durch Anklicken mit der Maus oder mit
  91.   Hilfe des "Fenster"-Menüs) und betätigt dann den "Parameter"-Knopf (Das
  92.   grüne, kursive !-Zeichen).
  93.  
  94.  
  95.  
  96.  
  97. 4. Wählen der Schriftfonts
  98.  
  99.   Nach dem ersten Start von GP/2 ist in allen QSO-Fenstern die Schriftart
  100.   "System Proportional" eingestellt, die Standard-Schrift des PM.
  101.   Proportional-Schriften sind für Textanwendungen wie PR allerdings relativ
  102.   ungeeignet, da sie z.B. bei Tabellen ein recht chaotisches Bild liefern.
  103.   Man sollte daher eine Monospace-Schriftart wählen, ich persönlich kann
  104.   die Schrift "System-VIO" empfehlen. (Die Schrift, die von OS/2- und DOS-
  105.   Sitzungen im Fenstermodus verwendet wird)
  106.   Hierzu muß man zunächst die Schriftarten-Palette öffnen und dann die
  107.   gewünschte Schriftart in das jeweilige Fenster von GP/2 ziehen.
  108.   Da jedes Fenster seine eigene Schftart besitzt, ist das zunächst relativ
  109.   viel Arbeit. Die aktuellen Einstellungen können beim Programmende jedoch
  110.   gespeichert und beim nächsten Programmstart wiederhergestellt werden.
  111.   Gleiches gilt auch für die Positionen der Fenster auf dem Desktop.
  112.   Zum Speichern der Einstellungen muß man den Menüpunkt "Fensterparameter
  113.   speichern" im Menü "Optionen" aktivieren. Die Funktion ist aktiviert, wenn
  114.   sich ein Haken vor dem Text befindet. Damit die Einstellungen beim nächsten
  115.   Programmstart wiederhergestellt werden, muß man auch den Menüpunkt
  116.   "Fensterparameter wiederherstellen" aktivieren.
  117.  
  118.  
  119.  
  120.  
  121. 5. Die Mailbox-Funktion
  122.  
  123.   Wie die DOS-Version von GP hat auch GP/2 eine Funktion, die das Lesen von
  124.   Mail vereinfacht. GP/2 erkennt automatisch eine CHECK- oder LIST-Liste der
  125.   DieBox-BBS. (Andere Mailboxsysteme werdn derzeit noch nicht unterstützt,
  126.   folgen aber noch in den nächsten Versionen)
  127.   Damit GP/2 eine CHECK- oder LIST-Liste erkennt, müssen folgende Bedingungen
  128.   erfüllt sein:
  129.  
  130.     - Die Mailbox muß als B>-Station in NAMES.GP eingetragen sein
  131.     - Die Überschrift der jeweiligen Liste muß GP/2 bekannt sein. Dazu muß man
  132.       zunächst eine kurze Liste von der Mailbox anfordern, z.b. mit "c 1" und
  133.       dann die Überschrift mit Cut&Paste aus dem RX-Fenster in das
  134.       Dialogfenster "Mailbox-Header" im Menü "Optionen/QSO" kopieren.
  135.       Es muß die komplette Zeile kopiert werden, inclusive <CR>.
  136.       Insgesamt können bis zu 1024 Bytes an Header-Daten gespeichert werden.
  137.       Bei Check-Listen ist als "Header" folgende Zeile gemeint:
  138.  
  139.        #  Call    File     Nr.  Datum   @MBX   Bytes #LT Titel
  140.  
  141.       Bei Rubriken-Listings, die mit dem "List"-Befehl angefordert werden,
  142.       ist als "Header" die Zeile gemeint, in der der Rubriken-Name angegeben
  143.       wird. Beispiel: "User-File: DH1DAE"
  144.       Man braucht aber nicht für jede Rubrik eine eigene Zeile einzutragen,
  145.       sondern GP/2 filtert den richtigen Namen aus der jeweils empfangenen
  146.       Zeile. Im Gegensatz zu den "Check-Headern" brauchen die "List-Header"
  147.       auch nicht komplett eingetragen zu werden sondern nur bis zu der Stelle,
  148.       wo der Rubriken-Name beginnt. Es reicht also die Angabe von
  149.       "User-File:".
  150.  
  151.       Für die Erkennung von EL-Verzeichnislisten muß man folgende Zeile
  152.       eintragen: "Dateien im Unterverzeichnis:" bzw. die Zeile, in der das
  153.       aktuelle Verzeichnis angezeigt wird. Mit ist leider nicht bekannt, ob
  154.       die Meldungen von EL in irgendeiner Weise vom Sysop editiert werden
  155.       können oder ob sie konstant sind...
  156.  
  157.  
  158.  
  159.  
  160.  
  161. 6. Die Connect-Texte
  162.  
  163.   Bei GP/2 gibt es zwei Arten von Connect-Texten:
  164.  
  165.   a) Normale ASCII-Texte
  166.  
  167.     Die ASCII-Connect-Texte werden in einem Dialogfenster erstellt und
  168.     editiert. (Menüpunkt "Optionen/QSO/Connect/QRT-Texte")
  169.  
  170.     Innerhalb der Connect- und QRT-Texte kann man folgende Makros verwenden:
  171.  
  172.       %B    : Das Klingelzeichen (0x07)
  173.       %C    : Das Call der Gegenstation
  174.       %D    : Das aktuelle Datum in der Form tt.mm.yyyy
  175.       %K    : Die Nummer des jeweiligen Kanals
  176.       %N    : Der Name der Gegenstation (falls bekannt)
  177.       %T    : Die aktuelle Uhrzeit in der Form hh:mm:ss
  178.       %V    : Die Versionsnummer von GP/2
  179.       %Y    : Das eigene Call (mycall)
  180.       %_    : CR (0x0D)
  181.       %%    : Das Prozentzeichen
  182.  
  183.     Die Länge des Makros kann gleichzeitig mit der Befehlsfolge "#<Nummer>"
  184.     direkt hinter dem Makro angegeben werden. Beispiel: %T#10
  185.     Ist das Makro kürzer als die Zahl, wird es mit Leerzeichen aufgefüllt,
  186.     bis es die gewünschte Länge erreicht hat. Ist es länger, wird es bei
  187.     der angegebenen Länge abgeschnitten.
  188.  
  189.     
  190.     b) REXX-Programme
  191.  
  192.       Anstelle eines normalen ASCII-Textes kann man auch ein REXX-Programm
  193.       als Connect-Text verwenden. Hierfür muß man eine Datei namens "LOGIN.CMD"
  194.       im GP/2-Verzeichnis anlegen. Sobald eine Station von außen connected,
  195.       wird eine OS/2-Sitzung gestartet und das REXX-Programm ausgeführt.
  196.       Innerhalb des REXX-Programms können auch andere OS/2-Programme gestartet
  197.       werden, sofern diese die Standard-Ein/Ausgabe benutzen. Siehe dazu das
  198.       Kapitel "Externe Fernsteuer-Programme"
  199.  
  200.       Wurden für bestimmte Calls persönliche ASCII-Connect-Texte angelegt,
  201.       wird LOGIN.CMD ignoriert und der entsprechende ASCII-Text ausgesendet.
  202.       Man kann jedoch auch persönliche REXX-Programme anlegen. Diese müssen
  203.       ebenfalls im GP/2-Verzeichnis angelegt werden und den Namen "<call>.CMD"
  204.       haben. Für DH1DAE z.B. "DH1DAE.CMD".
  205.  
  206.  
  207.   Die Priorität der Connect-Texte ist folgende:
  208.  
  209.     1. Persönliches REXX-Programm (<call>.cmd)
  210.     2. Persönlicher ASCII-Text
  211.     3. Allgemeines REXX-Programm (LOGIN.CMD)
  212.     4. Allgemeiner ASCII-Text
  213.  
  214.  
  215.  
  216.  
  217. 7. Info-Texte
  218.  
  219.   GP/2 erlaubt die Benutzung von individuellen Info-Texten für verschiedene
  220.   mycalls. Erstellt und Editiert werden diese Info-Texte in einem
  221.   entsprechenden Dialogfenster, das über den Menüpunkt
  222.   "Optionen/QSO/Info-Texte" aufgerufen wird.
  223.   Innerhalb der Info-Texte sind die gleichen Makros erlaubt wie in den
  224.   Connect-Texten.
  225.  
  226.  
  227.  
  228.  
  229. 8. Sysop-Paßwörter
  230.  
  231.   Für Sysops von DigiWare-, Flexnet-, TN(N), BayCom/BayBox und DieBox bietet
  232.   GP/2 die Möglichkeit, das entsprechende Sysop-Paßwort automatisch zu
  233.   generieren. Die Paßwort-Strings werden in dem Dialogfenster editiert, das
  234.   über den Menüpunkt "Optionen/QSO/Paßwörter" zu aktivieren ist.
  235.   Für das Flexnet-Paßwort ist die entsprechende 5-stellige Zahl, für DigiWare,
  236.   TN(N) sowie BayCom/BayBox der jeweilgie Paßwortstring einzutragen.
  237.   Für DieBox entsprechend ein Array von 60 Zeilen mit je 27 Zeichen.
  238.   Wichtig: Alle Paßwort-Strings müssen direkt an der ersten Position des
  239.   Editorfensters beginnen, also keine Leerzeilen/Leerzeichen einfügen.
  240.  
  241.   (Die Paßwort-Verwaltung ist ssid-sensitiv, d.h. man kann z.B. für DB0IZ
  242.    und DB0IZ-9 verschiedene Paßwörter und Algorithmen wählen)
  243.  
  244.   Hat man das Paßwort des Digipeaters bzw. der Mailbox eingegeben, wird das
  245.   Paßwort folgendermaßen generiert:
  246.  
  247.     - Für DigiWare, Flexnet, TN(N) und BayCom/BayBox:
  248.  
  249.      1) Den Befehl zum Sysop-Login an den Digipeater schicken
  250.      2) Den "Sysop"-Button drücken
  251.      3) Fertig
  252.  
  253.     - Für DieBox:
  254.  
  255.      1) Die Mailbox connecten
  256.      2) Den "Sysop"-Button drücken
  257.      3) Fertig
  258.  
  259.  
  260.  
  261.  
  262. 9. User-Paßwörter für BayBox
  263.  
  264.   Entsprechend den Sysop-Paßwörtern können auch User-Paßwörter gespeichert
  265.   werden. Diese werden errechnet und ausgesendet, wenn man den "User"-Button
  266.   drückt.
  267.   Wie man ein User-Paßwort beim BayBox-System einrichten kann, ist über die
  268.   Hilfe-Funktion der Mailbox zu erfahren.
  269.  
  270.  
  271.  
  272.  
  273. 10. Die GP/2-Fernsteuerung
  274.  
  275.   GP/2 bietet ein sehr flexibles Interface zur Fernsteuerung des Programms
  276.   durch andere Stationen. Sie können selbst wählen, welche Fernsteuerbefehle
  277.   Sie zulassen möchten und welche nicht. Des weiteren sind Sie nicht an die
  278.   (im Moment auch noch recht wenigen) internen Fernsteuerbefehle von GP/2
  279.   gebunden, sondern können sich auch eigene Fernsteuerbefehle definieren und
  280.   diese mit externen OS/2-Programmen verknüpfen (EXE- oder REXX).
  281.  
  282.   Editiert werden die Fernsteuer-Befehle in dem Dialogfenster, das über den
  283.   Menüpunkt "Optionen/QSO/Fernsteuerung" aktiviert wird. In dieses Fenster
  284.   sind die Fernsteuer-Kommandos einzutragen. Das Format der Einträge lautet
  285.   wie folgt:
  286.   
  287.   BEFEHL,<Min>[=<Programmname>] [* <Help-Text>]
  288.   ------ ----- ---------------   -------------
  289.     !      !           !               !
  290.     !      !           !               +-- Dieser Text wird bei //h ausgegeben
  291.     !      !           !
  292.     !      !           +------------------ Der Pfad zu dem jeweiligen externen
  293.     !      !                               Programm. (inclusive Extension)
  294.     !      !
  295.     !      +------------------------------ Die Minimale Abkürzung des Befehls
  296.     !
  297.     +------------------------------------- Der Fernsteuer-Befehl
  298.  
  299.   Beispiele:
  300.  
  301.     CATALOG,3 * Zeigt die Dateien im User-Verzeichnis
  302.  
  303.   Befehl "CATALOG", minimale Abkürzung 3 Buchstaben ("CAT"), kein externes
  304.   Programm zugeordnet -> internes Kommando, bei //h wird der Text "Zeigt die
  305.   Dateien im User-Verzeichnis" ausgegeben.
  306.  
  307.  
  308.  
  309.     SYSTEM,2=C:\OS2\CMD.EXE
  310.  
  311.   Befehl "SYSTEM", minimale Abkürzung 2 Buchstaben ("SY"), Zuordnung zum
  312.   Programm CMD.EXE im OS/2-Verzeichnis (OS/2-Shell). Wenn die Gegenstation
  313.   nun den Befehl //SY sendet, wird der OS/2-Kommandoprozessor gestartet und
  314.   die Gegenstation kann Ihren PC (fast) uneingeschränkt fernbedienen.
  315.   Da bei diesem Befehl diesmal kein Hilfe-Text angegeben wurde, erscheint er
  316.   auch nicht in der Remote-Hilfe. Man kann auf diese Weise versteckte Befehle
  317.   definieren.
  318.  
  319.  
  320.  
  321.  
  322. 11. Externe Fernsteuer-Programme
  323.  
  324.   Die wohl interessanteste Funktion bietet GP/2 mit der Möglichkeit, andere
  325.   OS/2-Programme über Packet Radio fernbedienen zu können. Durch die
  326.   Multitasking-Fähigkeiten von OS/2 wird der Betrieb von GP/2 dadurch nicht
  327.   beeinträchtigt und auch die ferngesteuerten Programme brauchen über kein
  328.   spezielles Interface zu verfügen (Stichwort: GPRI bei der DOS-Version von
  329.   GP). Aus diversen Gründen ist es allerdings nur möglich, OS/2-Programme
  330.   fernzusteuern. Mit DOS-Programmen würde es theoretisch zwar auch
  331.   funktionieren, doch treten in der Praxis einige schwerwiegende Probleme
  332.   auf, die ich bisher noch nicht lösen konnte.
  333.   Die fersteuerbaren OS/2-Programme müssen eine Bedingung erfüllen: Sie
  334.   müssen die Standard-Ein/Ausgabe benutzen. Die Fernsteuerung von PM-Programmen
  335.   ist nicht möglich. Diese Programme werden zwar gestartet, doch die Ausgabe
  336.   landet dann natürlich auf dem PM.
  337.  
  338.   GP/2 übergibt dem externen Programm einige Environment-Variablen, über die
  339.   das Programm einige Daten über das zugehörige QSO erlangen kann:
  340.  
  341.     GP_VERSION  Die Versinsnummer von GP/2
  342.     GP_CH       Die Nummer des Kanals (ASCII-Zahl)
  343.     GP_CCALL    Das Call der Gegenstation
  344.     GP_CPATH    Der Digipeater-Pfad zur Gegenstation
  345.     GP_CNAME    Der Name der Gegenstation
  346.     GP_MYCALL   Das eigene Call
  347.  
  348.  
  349.  
  350.  
  351.  
  352. 12. Der GP/2-Autorouter
  353.  
  354.   Der GP/2-Autorouter entspricht im wesentlichen dem der DOS-Version.
  355.   Der Autorouter von GP/2 hilt Ihnen, bekannte Stationen zu connecten, ohne daß
  356.   Sie den kompletten Pfad eingeben müssen oder sich von Hand durch die
  357.   Digipeater durchzuconnecten.  Voraussetzung dafür ist jedoch, daß der Pfad
  358.   zu der jeweiligen Station bekannt ist und in der Datei NAMES.GP eingetragen
  359.   wurde.  Die Listeneinträge haben immer folgende Syntax:
  360.  
  361.   TYP>CALL NAME; PFAD
  362.   oder
  363.   TYP>IDENT:CALL NAME; PFAD
  364.  
  365.   Bei Benutzung von IDENTs ist es auf jeden Fall wichtig, Ident UND Call
  366.   anzugeben, da GP/2 nur mit den Calls arbeitet. Daher kann jeder Station
  367.   ein beliebiges Ident zugeteilt werden, also auch z.B. Flexnet-Digipeatern.
  368.   Dies ist aber nur möglich, weil GP/2 nach außen hin immer nur mit dem Call
  369.   einer Station arbeitet, aber nicht mit dem Ident. Der Ident wird lediglich
  370.   GP/2-intern verwendet.
  371.   Wichtig ist auch die richtige Angabe des Typs, denn dadurch erkennt GP/2,
  372.   welche Aktionen durchgeführt werden dürfen und welche nicht.  So kann die
  373.   Check- und List-Funktion nur bei Mailboxen gebraucht werden, während
  374.   Fernsteuer-Befehle nur von TERMs (Terminal-Endstellen) bzw. von unbekannten
  375.   Stationen zugelassen werden. Des weiteren werden Die Statusmeldungen am Ende
  376.   einer AutoBin- oder 7plus-Speicherung ebenfalls nur an T>-Stationen gesendet.
  377.   Bei anderen Stationen werden die Texte nur auf dem Bildschirm angezeigt.
  378.  
  379.   Der Name der Station darf Leerzeichen enthalten und kann theoretisch
  380.   beliebig lang sein.  Es muß darauf geachtet werden, daß die Rufzeichen und die
  381.   Typenangabe in Großbuchstaben geschrieben wird, so wie bei den untenstehenden
  382.   Beispielen.  Ist die entsprechende Station direkt und ohne einen Digipeater
  383.   erreichbar, dann wird der Pfadeintrag einfach weggelassen, ansonsten enthält der
  384.   Pfad eine Auflistung aller notwendigen Digipeater.
  385.   Ein Digipeatereintrag hat immer folgende Syntax:
  386.  
  387.     TYP>CALL
  388.     oder
  389.     TYP>IDENT
  390.     oder
  391.     TYP>IDENT:CALL
  392.  
  393.   WICHTIG: Der letzte Eintrag muß in jedem Fall IMMER die Syntax TYP>CALL
  394.            besitzen und darf keinen Ident enthalten!
  395.  
  396.   Der Typ kann folgende Buchstaben annehmen:
  397.  
  398.             B :  Mailbox (z.B. B>DB0SGL)
  399.             D :  L2-Digipeater (z.B. D>DB0ID)
  400.             F :  Flexnet-Digipeater (z.B. F>DB0FN)
  401.             N :  NetRom-Digipeater (z.B. N>DB0EAM)
  402.             ! :  Wie N, nur daß hier der Befehl "C!" verwendet wird
  403.             T :  Terminal-Endstelle (z.B. T>DH1DAE)
  404.  
  405.   Wird eine Terminal-Endstelle als Digipeater benutzt, dann generiert GP/2
  406.   automatisch einen entsprechenden Remote-Befehl, also "//C ...".
  407.  
  408.   Anhand dieser Typenbezeichner erkennt GP, auf welche Weise über die
  409.   einzelnen Stationen connected werden muß.  Ein Pfadeintrag sieht z.B.
  410.   folgendermaßen aus:
  411.  
  412.   T>DH1DAE Ulf; D>DB0NWS D>DB0FN T>DH1DAE
  413.  
  414.   In diesem Fall sendet GP/2 an den TNC den Befehl "C DH1DAE DB0NWS DB0FN".
  415.  
  416.   Ist in der Pfadliste jedoch ein N>- oder F>-Digi vorhanden, z.B.:
  417.  
  418.   T>DH1DAE Ulf; N>DB0HSK F>DB0DOZ D>DB0FN T>DH1DAE
  419.  
  420.   dann sieht die Connectsequenz etwas anders aus.  Jetzt wird zunächst der
  421.   Digipeater DB0HSK connected, dann der Befehl "C DB0DOZ" und anschließend der
  422.   Befehl "C DH1DAE DB0FN" ausgesendet.
  423.  
  424.   Das folgende Beispiel demonstriert die Anwendung des Typs "!":
  425.  
  426.   T>DF3VI Patrick; D>DB0FN-9 !>DB0II !>ON5PL !>ON5ZS F>LX0PAC D>DB0HOM
  427.  
  428.   GP/2 generiert nun folgende Connect-Sequenz:
  429.   "C DB0II DB0FN" "C! ON5PL" "C! ON5ZS" "C! LX0PAC" "C DF3VI DB0HOM"
  430.  
  431.   Idents können beispielsweise so angewendet werden:
  432.  
  433.   F>SIEGEN:DB0FN Digi Siegen
  434.   T>ULF:DH1DAE Ulf; D>SIEGEN T>DH1DAE
  435.  
  436.   Nun kann man im Connect-Dialogfenster anstelle von "DH1DAE" auch "ULF"
  437.   eingeben, und GP/2 generiert den Connect-Befehl "C DH1DAE DB0FN".
  438.  
  439.  
  440.  
  441. 12.1 Rekursive Pfadeinträge
  442.  
  443.   In der Pfadliste muß nicht der komplette Pfad eingegeben werden, sondern es
  444.   kann auf einen anderen, schon bekannten Pfad aufgebauen.
  445.  
  446.   Beispiel:
  447.  
  448.   F>DB0FN Digi Siegen
  449.   F>DB0WST Netzknoten West; F>DB0FN F>DB0WST
  450.   F>DB0ME Digi Solingen; F>DB0WST F>DB0ME
  451.   B>DB0SGL Mailbox Siegen; F>DB0FN B>DB0SGL
  452.   B>DB0IZ Mailbox Solingen; F>DB0ME B>DB0IZ
  453.  
  454.   Der vollständige Pfad zu DB0IZ z.B. wird nun aus dem Pfad zu DB0ME und zu
  455.   DB0WST zusammengesetzt.  Es ergibt sich beim Connecten dann automatisch
  456.   folgender Pfad:
  457.  
  458.   F>DB0FN F>DB0WST F>DB0ME B>DB0IZ
  459.  
  460.   Die Verwendung der rekursiven Pfadeinträge hat zwei Vorteile:
  461.  
  462.     1. Man muß weniger eintippen (hi)
  463.     2. Die Pfadliste wird variabler, falls ein bestimmter Digipeater ausfällt
  464.        oder ein neuer Link dazukommt, braucht nur EIN Pfadeintrag geändert zu
  465.        werden.
  466.  
  467.  
  468.  
  469. 12.2 Autorouting über SP-Gateways
  470.  
  471.   Sollte in einem Pfad ein Link über ein SP-Gateway vorkommen, bei dem hinter
  472.   dem Call auch noch eine Portnummer angegeben werden muß, läßt sich dies
  473.   durch einen Trick erreichen, und zwar durch einen "Dummy-Digi".
  474.   Beispiel:
  475.  
  476.     DL9ZZZ ist ein SP-Gateway, der mit Port0 auf 70cm und mit Port1 auf 2m QRV
  477.     ist.  OM A ist auf 2m QRV und will DB0XYZ auf 70cm connecten.  Der
  478.     entsprechende Connect-Befehl müßte also lauten "//C DB0XYZ 0".  Der Pfad-
  479.     eintrag in NAMES.GP sieht dann folgendermaßen aus:
  480.  
  481.     N>DB0XYZ Testdigi; T>DL9ZZZ D>0 N>DB0XYZ
  482.  
  483.     GP/2 connected zuerst DL9ZZZ und sendet dann den Befehl "//C DB0XYZ 0".
  484.     (Hat DL9ZZZ seinen Gateway als Node konfiguriert, kann man anstelle von
  485.     "T>DL9ZZZ" auch "N>DL9ZZZ" eintragen)
  486.  
  487.   Dieser Trick kann nicht nur bei SP-Gateways angewendet werden, sondern z.B.
  488.   auch bei Baycom-Nodes, wenn dort eine Portnummer angegeben werden muß.
  489.  
  490.  
  491.  
  492. 12.3 Einige Anmerkungen zum Autorouter
  493.  
  494.   Wie Sie sicher schon bemerkt haben, wertet der Autorouter die entsprechenden
  495.   Connect-Meldungen der Digipeater aus, um den tatsächlichen Endknoten zu er-
  496.   mitteln.  Nachrichtentechnisch gesehen ist solch eine Art des Autoroutens
  497.   zwar ziemlich unsinnig, aber bei dem derzeitigen Packet Radio-Netz mit
  498.   seinen NetRom-Knoten nicht anders möglich.  Das bessere Routing wird auf
  499.   jeden Fall von Flexnet-Digipeatern übernommen und es sollte daher so weit
  500.   wie möglich dieses Routing-System benutzt werden.  Bei Flexnet-Digipeatern
  501.   kann angezeigt werden, welche Digipeater über das Flexnet-Autorouting
  502.   erreicht werden können, der Befehl, mit dem eine solche Liste abgerufen
  503.   werden kann, ist "D".
  504.  
  505.  
  506.  
  507. 12.4 Die QRG-Verwaltung
  508.  
  509.   Im Gegensatz zur DOS-Version von GP wird die QRG-Verwaltung von GP/2 nicht
  510.   mehr in der Datei NAMES.GP vorgenommen, sondern mit Hilfe eines
  511.   Dialogfensters, das über den Menüpunkt "Optionen/Frequenzen" aktiviert wird.
  512.   In diesem Fenster kann man den jeweiligen Digipeater und dessen QRG für den
  513.   Default-Port (alle TNCs) sowie die Ports 0-3 (nur Multiport-TNCs) wählen.
  514.   Die Angabe der QRG hat Einfluß auf das QRG-abhängige Autoconnecten, das im
  515.   nachfolgenden Kapiten beschrieben wird. Des weiteren wird die QRG in das
  516.   automatische Logbuch eingetragen, sofern dieses aktiviert ist.
  517.   Die Angabe des Digipeaters wirkt sich auf das Makro %DIGI% aus. (Siehe 12.6)
  518.  
  519.  
  520.  
  521. 12.5 QRG-abhängiges Autoconnecten
  522.  
  523.   Hat man mehrere Digipeater in Reichweite und wechselt daher öfters den
  524.   Digi-Einstieg ins Netz, muß man meistens auch einige Pfadeinträge in
  525.   NAMES.GP ändern und auf den jeweiligen Digipeater anpassen. Damit man das
  526.   nicht per Hand machen muß, kann man QRG-abhängige IF-Bedingungen in NAMES.GP
  527.   einbauen. Die Funktionsweise läßt sich am besten direkt an einem Beispiel
  528.   erklären:
  529.  
  530.   Ich bin in der Lage, sowohl über DB0FN als auch über DB0NWS zu arbeiten.
  531.   DB0FN arbeite ich über Port 0 und hat die QRG 430.625,
  532.   DB0NWS wird über Port 1 gearbeitet und hat die QRG 433.775
  533.   Dann kann die Datei NAMES.GP z.B. so aussehen:
  534.  
  535.   <IF 430.625>
  536.   B>DB0SGL Mailbox Siegen; D>DB0FN B>DB0SGL
  537.   F>DB0ME FALCon-Digi Solingen; D>DB0FN F>DB0ME
  538.   <END>
  539.   <IF 433.775>
  540.   B>DB0SGL Mailbox Siegen; D>DB0NWS B>DB0SGL
  541.   F>DB0ME FALCon-Digi Solingen; D>DB0NWS F>DB0ME
  542.   <END>
  543.   T>DG9EP Walter; F>DB0ME T>DG9EP
  544.   B>DB0IZ Mailbox Solingen; F>DB0ME B>DB0IZ
  545.   .
  546.   .
  547.   .
  548.  
  549.   Wenn man nun über DB0FN arbeitet, sieht der Pfad nach z.B. DG9EP so aus:
  550.   D>DB0FN F>DB0ME T>DG9EP
  551.   Arbeitet man hingegen über DB0NWS, ändert sich der Pfad automatisch in:
  552.   D>DB0NWS F>DB0ME T>DG9EP
  553.  
  554.   Wenn man wie in dem Beispiel hierarchische Pfadeinträge benutzt, braucht man
  555.   nicht alle Pfadeinträge von einer IF-Bedingung abhängig zu machen, sondern
  556.   nur die Teilstücke, die sich durch den Digipeaterwechsel ändern.
  557.   In dem oben genannten Beispiel ist z.B. der Pfad ab DB0ME immer gleich,
  558.   deshalb braucht nur der Pfad nach DB0ME geändert zu werden, aber nicht die
  559.   Pfade, die von DB0ME aus weiterführen.
  560.  
  561.  
  562.  
  563. 12.6 Das Makro %DIGI%
  564.  
  565.   Dieses Makro ist nur bei Multiport-Betrieb interessant. GP/2 ersetzt dieses
  566.   Makro beim Erzeugen des Pfades durch das Digipeater-Call, was dem gerade
  567.   aktiven Port zugeordnet ist. Dadurch wird das Erstellen der Pfadliste
  568.   erleichtert, wenn man den Autorouter der Digipeater benutzt.
  569.  
  570.   Beispiel:
  571.     (wiederum DB0FN auf Port 0 mit QRG 430.625 sowie
  572.      DB0NWS auf Port 1 mit QRG 433.775)
  573.  
  574.     B>DB0SGL Mailbox Siegen; D>%DIGI% B>DB0SGL
  575.     F>DB0ME FALCon-Digi Solingen; D>%DIGI% F>DB0ME
  576.     T>DG9EP Walter; F>DB0ME T>DG9EP
  577.     B>DB0IZ Mailbox Solingen; F>DB0ME B>DB0IZ
  578.  
  579.   Dieses Beispiel entspricht in der Wirkung dem aus Kapitel 10.5. Durch den
  580.   Einsatz dieses Makros können in diesem Beispiel die IF-Anweisungen weggelassen
  581.   werden.
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588. 13. Das PIPE-Interface
  589.  
  590.   Zusätzlich zu den externen Remote-Programmen kann man auch noch weitere
  591.   externe Programme mit GP/2 verbinden. Zu diesem Zweck stellt GP/2 eine
  592.   Reihe von PIPES bereit, über die ein Programm mit dem GP/2-Monitor und/oder
  593.   den QSO-Kanälen kommunizieren kann. PIPES sind im Prinzip nichts anderes
  594.   als eine Datei nur mit dem Unterschied, daß nicht mit der Festplatte
  595.   kommuniziert wird, sondern mit einem anderen Programm. Für den Programmierer
  596.   stellen sich PIPES deshalb auch wie ganz normale Dateien dar, nur daß deren
  597.   Name immer mit \PIPE\ beginnt.
  598.   GP stellt folgende Pipes zur Verfügung:
  599.  
  600.     \PIPE\GP\MONITOR\DATA       Daten-Pipe zum GP-Monitor.
  601.     \PIPE\GP\MONITOR\CMD        Kommando-Pipe zum GP-Monitor. Mit dieser Pipe
  602.                                 ist ein direkter Zugriff auf Kanal 0 des TNC
  603.                                 möglich.
  604.     \PIPE\GP\CHx\DATA           Daten-Pipe für Kanal x (x = 1..10). Bei
  605.                                 einem Disconnect wird die Pipe geschlossen, kann
  606.                                 aber direkt danach wieder geöffnet werden. So
  607.                                 kann eine Aplikation auf einfache Weise erkennen,
  608.                                 daß ein Disconnect erfolgte.
  609.     \PIPE\GP\CHx\CMD            Kommando-Pipe für den jeweiligen Kanal zum
  610.                                 Direkt-Zugriff auf den jeweiligen TNC-Kanal
  611.  
  612.   Bei allen Pipes handelt es sich um "Duplex-Pipes", d.h. es sind sowohl Lese-
  613.   als auch Schreibzugriffe möglich. Die Pipes sollten immer gleichzeitig zum
  614.   Lesen und Schreiben geöffnet werden, da es sonst zu merkwürdigen Effekten
  615.   kommen kann.
  616.  
  617.  
  618.  
  619. 13.1 Die Pipe-Protokolle
  620.  
  621.   Auf den CMD-Pipes wird ein vereinfachtes WA8DED-Hostmode-Protokoll benutzt.
  622.   Da es für jeden Kanal eine eigene Pipe gibt, entfällt das Kanal-Byte.
  623.   Ebenso entfällt die Modus-Byte, da nur Kommandos gesendet werden dürfen und
  624.   auch nur Antworten auf Kommandos empfangen werden können. Die TNC-Befehle
  625.   werden Null-terminiert zur Pipe gesendet und auf jeden gesendeten Befehl
  626.   gibt es eine ebenfalls Null-terminierte Antwort des TNC. Es wird in jedem
  627.   Fall eine Antwort gesendet, bei einer "leeren" Antwort wird nur das NULL-
  628.   Byte gesendet.
  629.   Beispiel: Um das TX-Delay des TNC abzufragen, schreibt man "T<NULL>" in die
  630.             Kommando-Pipe und erhält als Antwort z.B. "30<NULL>"
  631.  
  632.   Die DATA-Pipes der Kanäle benutzen kein Protokoll, sondern die Daten werden
  633.   in beiden Richtungen transparent gesendet.
  634.  
  635.   Die DATA-Pipe des Monitors sendet die Monitor-Daten wiederum in einem
  636.   Protokoll, da das Client-Programm zwischen Monitor-Header und Monitor-Daten
  637.   unterscheiden muß. Monitor-Header beginnen mit einer binären 1 und enden mit
  638.   einer binären 0. Monitor-Daten beginnen mit einer binären 2, gefolgt von
  639.   2 Bytes, die die Länge der nachfolgenden Daten beinhalten. Bei der Längen-
  640.   angabe wird zunächst das Lo- und dann das Hi-Bit gesendet.
  641.  
  642.   Werden die Pipes geöffnet, wird zunächst ein kurzer Copyright-Text gesendet,
  643.   der mit Ctrl-Z abgeschlossen wird. Die eigentlichen Pipe-Daten folgen erst
  644.   nach dem Ctrl-Z. Man kann den Copyright-Text auch auf dem Bildschirm
  645.   anzeigen lassen, indem man eine OS/2- oder DOS-Sitzung öffnet und dann
  646.   folgenden Befehl gibt:
  647.   "TYPE \PIPE\GP\MONITOR\DATA" (Oder auch eine andere Pipe)
  648.  
  649.  
  650. 13.1.1 Warten auf einen Connect
  651.  
  652.   Wenn eine Applikation darauf warten will, daß ein bestimmter Kanal connected
  653.   wird, kann sie sich eines speziellen GP/2-Kommandos bedienen. Das Kommando
  654.   heißt "@@@WAITCON" und wird wie ein TNC-Kommando über die Kommando-Pipe zu
  655.   GP/2 geschickt. Die Antwort auf das Kommando kommt erst, wenn der Kanal
  656.   connectet wurde oder wenn der Warte-Timeout abgelaufen ist. Als Antwort wird
  657.   dann das Call der Gegenstation sowie der L2-Pfad zur Applikation geschickt
  658.   (Nullterminiert). Erscheint als Antwort nur eine binäre Null, so bedeutet
  659.   dies, daß innerhalb des Warte-Timeouts kein Connect erfolgt ist.
  660.   Die Applikation kann die Zeitdauer des Warte-Timeouts selbst bestimmen,
  661.   indem sie dem Befehl @@@WAITCON eine Zahl als Parameter übergibt. Diese Zahl
  662.   bestimmt den Warte-Timeout in ms.
  663.   Beispiele:
  664.     @@@WAITCON 60000         Der Warte-Timeout soll 60000ms (= 60s) betragen.
  665.     @@@WAITCON -1            Warte-Timout ausgeschaltet, es wird so lange
  666.                              gewartet, bis tatsächlich ein Connect erfolgt.
  667.     @@@WAITCON 0    oder
  668.     @@@WAITCON               Default-Timeout (30s)
  669.  
  670.  
  671.  
  672. 13.2 Was man bei PIPES beachten muß
  673.  
  674.   Pipes werden zwar prinzipiell wie Dateien behandelt, doch verhalten sie sich
  675.   in einem Punkt anders als normale Dateien: Wenn ein Client-Programm aus einer
  676.   Pipe lesen will, in der sich keine Daten befinden, wird das Programm (genauer
  677.   gesagt der jeweilige Thread) so lange angehalten, bis ein Datum aus der Pipe
  678.   gelesen werden konnte oder bis die Pipe vom Server-Programm geschlossen
  679.   wurde. Für DOS-Programme bedeutet das, daß für diesen Zeitraum die koplette
  680.   Sitzung angehalten wird. Es ist also z.B. nicht möglich, ein DOS-Programm
  681.   zu schreiben, das einerseits immer die Daten-Pipe ausliest und zusätzlich
  682.   noch ein Menü oder eine andere interaktive Schnittstelle zum Benutzer zur
  683.   Verfügung stellt. Zumindest ist dies nur in einem gewissen Rahmen möglich.
  684.   Bei OS/2-Programmen stellt sich dieses Problem jedoch nicht, da man hier das
  685.   Problem durch die Verwendung mehrerer Threads vermeiden kann.
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694.  
  695.                                    ANHANG A
  696.                               LIZENZBESTIMMUNGEN
  697.  
  698.   GP darf nur im Rahmen der allgemeinen Lizenz für Amateurfunk Software (ALAS)
  699.   benutzt oder weitergegeben werden. Nachfolgend die Bestimmungen diese Lizenz:
  700.  
  701.  
  702.                 Allgemeine Lizenz für Amateurfunk Software (ALAS)
  703.  
  704.   Copyright (C) 1992   Hans Georg Giese, DF2AU
  705.                        Hinter dem Berge 5
  706.                        D-3300 Braunschweig
  707.  
  708.   Dieses Dokument darf beliebig vervielfältigt oder verteilt werden,
  709.   solange es nicht verändert wird. Für Anregungen, wie es zu verbessern ist,
  710.   bin ich dankbar. (DF2AU @ DK0MAV.DL.EU)
  711.  
  712.  
  713. 1. Vorwort
  714.   Diese Lizenz entstand aus der General Public Licence der Free Software
  715.   Foundation (GPL). Ich habe versucht, den Sinn zu erhalten und mehr Klarheit
  716.   hineinzubringen. Einige Passagen sind vollständig entfallen. Es ist aber
  717.   jedem Nutzer freigestellt, an Stelle dieser Lizenz die GPL Bedingungen
  718.   anzuwenden.
  719.  
  720.   Der Sinn dieser Lizenz ist es, den Autor und den Anwender der Software zu
  721.   schützen. Es sind daher einige Einschränkungen erforderlich und es entstehen
  722.   auch einige Pflichten für den, der die mit dieser Lizenz verbundene Software
  723.   weitergibt oder verändert.
  724.  
  725.   Dies wird dadurch erreicht, dass die Software durch Copyright geschützt
  726.   wird und der Nutzer durch diese Lizenz die Möglichkeit einer nahezu
  727.   unbeschränkten Nutzung erhält.
  728.  
  729.  
  730. 2. Geltungsbereich
  731.   Diese Lizenz gilt für jedes Programm oder Teil eines Programmpaketes, das
  732.   eine Copyright Notiz ausgibt, die sich auf diese Lizenz bezieht. Im folgenden
  733.   bedeutet "Programm" entweder das Programm oder einen Teil davon.
  734.   "Du" bist der Lizenznehmer.
  735.  
  736.  
  737. 3. Deine Rechte:
  738.   Du darfst das Programm nutzen oder kopieren oder verteilen oder verändern,
  739.   solange Du damit keine kommerziellen Absichten verbindest.
  740.  
  741.  
  742. 4. Deine Pflichten:
  743.  
  744. 4.1. Du darfst den Copyright Vermerk und den Hinweis auf diese Lizenz nicht
  745.   verändern und er muss bei jedem Start des Programms eindeutig für den
  746.   Benutzer sichtbar sein.
  747.  
  748. 4.2. Du musst jedem Dritten, dem Du eine Kopie des Programms gibst, die
  749.   gleichen Rechte einräumen, die auch Dir gegeben wurden. Du musst ihm
  750.   auch die gleichen Pflichten auferlegen.
  751.  
  752. 4.3. Du darfst für die Weitergabe kein Geld verlangen ausser den
  753.   Kosten für das Medium und Porto.
  754.  
  755. 4.4. Du darfst das Programm nur komplett weitergeben, so wie Du es bekommen
  756.   hast. (Anmerkung DH1DAE: 1:1-Kopie der Originaldiskette!)
  757.  
  758. 4.5. Wenn Du das Programm veränderst oder Teile davon für eigene Arbeiten
  759.   verwendest - wörtlich oder verändert - so gelten die folgenden Punkte für
  760.   das daraus entstehende neue Programm:
  761.  
  762. 4.5.1. Du musst deutlich sichtbar angeben:
  763.   - Deinen Namen und Deine Adresse und
  764.   - die Tatsache, dass Du das Programm geändert hast oder Teile des
  765.     Programms verwendet hast.
  766.  
  767. 4.5.2. Du musst das Programm entweder mit dem kompletten Quelltext
  768.   weitergeben oder jedem auf Verlangen eine Kopie des Quelltextes gegen eine
  769.   Gebühr von maximal der Kosten des Mediums und der Portokosten aushändigen.
  770.  
  771. 4.5.3. Du darfst keine Beschränkungen aussprechen, die über diese Lizenz
  772.   hinausgehen.
  773.  
  774.  
  775. 5. Sonstiges
  776.   Du erhälst das Programm ohne jede Garantie für Funktion, Fehlerfreiheit oder
  777.   Anwendbarkeit für eine bestimmte Sache. Du verzichtest auf jede
  778.   Schadensersatzforderung, gleich aus welchem Grunde.
  779.   Mit der Nutzung des Programms erkennst Du diese Lizenzbedingungen
  780.   vorbehaltlos an.
  781.  
  782.  
  783.   Vers. 1.0, 13-OCT-92
  784.  
  785.   Ende ALAS
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.                                    ANHANG B
  794.                                 KONTAKTADRESSE
  795.  
  796.   Wer Interesse an der neusten Version von GP/2 hat, kann eine Leerdiskette und
  797.   ausreichend Rückporto an folgende Adresse schicken:
  798.  
  799.   Ulf Saran                                  Bankverbindung:
  800.   DH1DAE                                     Konto:    674945
  801.   Veit-Stoß-Str. 36                          Institut: Sparkasse Siegen
  802.   57076 Siegen                               BLZ:      460 500 01
  803.  
  804.   (Programmspenden sind nicht notwendig, werden aber dankbar angenommen) :-)
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811.  
  812.                                    ANHANG C
  813.                                PROGRAMMAUTOREN
  814.  
  815.   Das Programm GP/2 wurde vollständig von DH1DAE entwickelt. Aufgrund der
  816.   Unterschiede zwischen der Programmierung unter DOS und der des OS/2
  817.   Presentation Managers wurde GP/2 von Grund auf neu entwickelt, ohne auf
  818.   Programmteile der DOS-Version von GP zurückzugreifen.
  819.   Als Entwicklungs-Tools wurden der IBM C Set/2 sowie das IBM OS/2 Developer's
  820.   Toolkit (beides (c) IBM Corp.) verwendet.
  821.  
  822.   Besonderer Dank für Bug-Reports, Verbesserungsvorschläge etc. an:
  823.   DG9EP, DG1EHE, DG1EH, DL7GAI, DG1KJD und DB5SH.
  824.   (Diese Liste erhebt keinen Anspruch auf Vollständigkeit) ;-)
  825.   Tnx auch an ADACOM e.V.
  826.  
  827.  
  828.  
  829.  
  830.  
  831. Änderungen vorbehalten.
  832.  
  833. Siegen, den 19.07.1994
  834.  
  835.